Python速览
Python中的数据类型
int 整数 float 小数 complex 复数 str 字符串 list 列表 tuple 元组 bool 布尔 dict 字典 set 集合
一、数字
- 加减乘除,除之后向下取整,取余,乘方
两个数相除,所得是浮点数
- 小数与整数相互转换
a = 13
b = 13.9
c = int(b) # 去尾取整
d = float(a)
print(c) # 13
print(d) # 13.0
二、字符串
- 单引号,双引号包裹字符串字面量
单引号和双引号没有区别
- \ 表示转义字符,r表示不使用转义
- print() 输出字符串
正常的字符串是不会将转义字符转成对应的含义的,print()会
- """ 和 ''' 表示多行字符
- 字符串的拼接,重复
- 字符串的索引
- 字符串的切片
a = '12345678'
print(a[1: 7]) # 234567
print(a[1: 7: 2]) # 246
print(a[7: 1: -2]) # 864
- 字符串的修改
字符串是不可修改的,若想修改,需要通过索引,切片和拼接得到新字符串
- 字符串长度(len()内置函数)
- 判断子串
a = 'hello world'
b = 'Python'
print("el" in a) #true
print("y" not in b) #false
- 数字和字符串的互相转换
- 字符串转为数字
- 数字转换成字符串
- 将字符串当作表达式
a = '1234'
b = '12.34'
c = int(a) # 字符串转成整数
d = float(b) # 字符串转成浮点数
print(c + d) # 1246.34
a = 1234
b = 12.34
c = str(a)
d = str(b)
print(c + d) # 123412.34
a = '14 + 15'
b = 19
c = 'b * 2'
print(a) # 14 + 15
print(eval(a)) # 29
print(eval(c)) # 38
- 字符串的分割
- 以一个分隔符来分割
用字符串中的split(seperatment)python
say = "tomorrow,,is,better,than,,yesterday"
s = say.split(',')
print(s)
# ['tomorrow', '', 'is', 'better', 'than', '', 'yesterday']
# 相邻分割符分割之后会得到一个空串
- 以多个分隔符来分割
# 需要导入re模块,以正则表达式来分割
import re
say = "tomorrow, is,better than*yesterday"
s = re.split(",| |\*", say)
print(s)
#['tomorrow', '', 'is', 'better', 'than', 'yesterday']
- 字符串函数
str.count("substr")求子串出现的次数len(str)求字符串长度str.upper(), str.lower()转大写,转小写str.find(substr, [strat]), str.rfind(substr, [strat])查找第一个出现的子串的位置,没找到则返回-1,start指定起点str.index(substr, [start]), str.rindex(substr, [start])和find一样的功能,不同的是查找失败会引发异常str.replace(old, new)把str中所有old子串换成new子串str.isdigit(), str.isupper(), str.islower()判断字符串是否全是数,大写,小写str.stratswith('substr'), str.endwith('substr')判断字符串是否以某子串开头,结尾str.strip([substr]), str.lstrip([substr]), str.rstrip([substr])返回头尾去除某一字符之后的字符串,lstrip是去除头部,rstrip是去除尾部
-
字符串编码
-
用format方法,
str.format(arguments) -
用格式化字符串字面值
三、列表
- 字面量,用方括号包起来
- 索引和切片
- 合并
- 改变内容(可以通过索引,和切片来改变)
- list自己的方法:append()在结尾添加新元素
- 内置函数 len()
- 列表嵌套
- 用in来判断列表中是否包含某个元素
- 字符串分割成列表
x = '1\n2\t3 4'
new_x = x.split() # 分割字符串,\n,\t,空格都会被视作分割的标志,返回的是以字符串为元素的列表
total = 0
for item in new_x:
print('item:', item)
total += int(item)
print('total:', total)
# item: 1
# item: 2
# item: 3
# item: 4
# total: 10
四、输入输出语句
1. 输出语句
print('hello world')
print('hello world', end='') # 修改末尾输出,默认的末尾输出为换行符
print('hello', 'world') # 输出多个参数,中间默认以空格隔开
2. 输入语句
x = input('type your code')
# input 接受字符串参数,并将其放入标准输出中,不包括换行符
# 输入的内容会在敲下回车的时候转换为字符串返回
# 每次输入一行,如果要输入三行,就要写三次input
五、比较运算
- Python中的比较运算可以连续比较
print(4 < 6 < 8) # True
print(4 < 6 > 2) # True
- Python中 1==True, 0==Flase,其他的都只是相当于True或False,并不相等
print(1 == True) # True
print(0 == False) # True
print(2 == True) # False
print([] == False) # False
print(not []) # True
- 运算符优先级
- 总体上而言,算术 > 关系 > 逻辑
- 逻辑:not > and > or